package com.miyu.common.service.book;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.miyu.common.pojo.book.BookPage;

/**
 * 书籍服务
 *
 * @author longm
 * @date 2022/11/19
 */
public interface BookService {

    /**
     * 公共page解析根据传参不同解析
     * ruleId 规则ID
     * type取值类型
     * param 附加参数处理
     * 解析数据缓存到redis或ehche中
     * @param bookPage
     * @return
     */
    JSONObject BookPageJX(BookPage bookPage);

    /**
     * 查询搜索书
     * @param bookPage 本页面
     * @return {@link JSONObject}
     */
    JSONArray querySearchBook(BookPage bookPage);

    /**
     * 查询书细节
     * @param bookPage 本页面
     * @return {@link JSONObject}
     */
    JSONObject queryBookDetail(BookPage bookPage);

    /**
     * 查询书章
     * 查询书章节
     * @param bookPage 本页面
     * @return {@link JSONObject}
     */
    JSONArray queryBookChapter(BookPage bookPage);

    /**
     * 查询书读者
     * 查询书阅读页面
     * @param bookPage 本页面
     * @return {@link JSONObject}
     */
    JSONObject queryBookReader(BookPage bookPage);


    /**
     * 收集书
     * 数据采集 每次数据采集
     * @param bookPage 本页面
     * @return {@link JSONObject}
     */
    JSONObject collectBook(BookPage bookPage);

    /**
     * 规则校验取值
     * @param bookPage 本页面
     */
    JSONObject checkBookRule(BookPage bookPage);
}
